﻿using Adnc.Application.Shared.Services;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using WYT.Sys.Application.Contracts.Dtos.Edu;

namespace WYT.Sys.Application.Contracts.Services
{
    /// <summary>
    /// 
    /// </summary>
    public interface IEduAppService : IAppService
    {
        /// <summary>
        /// 获取课时
        /// </summary>
        /// <param name="courseId"></param>
        /// <param name="phaseId"></param>
        /// <returns></returns>
        Task<AppSrvResult<List<EduLessonDto>>> GetEduLessonByGroupId(long courseId, long phaseId);

        /// <summary>
        /// 获取课程阶段
        /// </summary>
        /// <param name="courseId"></param>
        /// <returns></returns>
        Task<AppSrvResult<List<EduPhaseDto>>> GetEduPhase(long courseId);

        /// <summary>
        /// 获取课分组列表
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        Task<AppSrvResult<List<EduGroupListDto>>> GetGroupList(int type);

        /// <summary>
        /// 获取课程详情
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<AppSrvResult<EduGroupDetailDto>> GetCourseDetail(long input);

        /// <summary>
        /// 阅读记录
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="input"></param>
        /// <returns></returns>
        Task<AppSrvResult> ReadingRecords(long userId, EduReadingRecordsDto input);
    }
}
